package com.koalac.ironman.widget;



public interface ImageLoadAgreement {
	/**
	 * 图片类型
	 */
	public enum ImageType {
		Width_60x60(60), Width_180x180(180), Width_320x320(320), SourceImage(-1);

		private int value;
		private static int realValue_60, realValue_180, realValue_320;

		private ImageType(int v) {
			this.value = v;
		}

		public int getValue() {
			return this.value;
		}


		/**
		 * 获取后缀
		 * @return
		 */
		public String getSuffix() {
			if (value == Width_60x60.value)
				return "!60x60";
			if (value == Width_320x320.value)
				return "!320x320";
			if (value == SourceImage.value)
				return "";
			return "!180x180";
		}

		/**
		 * 
		 * @description 获取实际的
		 * @Date 2014-6-9
		 * @author chenxiaohua
		 */
		public  int getRealValue(int value) {
			switch (value) {
			default:
			case 60:
				return realValue_60;
			case 180:
				return realValue_180;
			case 320:
				return realValue_320;
			}
		}
		
		/**
		 * @description 设置真实值，主要为了应对当前等dimen
		 * @Date 2014-6-9
		 * @author chenxiaohua
		 */
		public void setRealValue(int value, int realValue) {
			switch (value) {
			default:
			case 60:
				realValue_60 = realValue;
				break;
			case 180:
				realValue_180 = realValue;
				break;
			case 320:
				realValue_320 = realValue;
				break;
			}
		}
	}

	

	
	/**
	 * 
	 * @param filename
	 *            文件名称
	 * 
	 * @description 根据指定的文件名来加载文件，对于部分UI来说，这个可能就马上要触发当前的下载以及相关展现
	 *              <p>
	 *              统一接口，有文件的控件实现此接口,ImageType 默认为 Width_60x60
	 *              </p>
	 * @Date 2014-6-9
	 * @author chenxiaohua
	 */
//	public void loadFile(String filename);

	/**
	 * 
	 * @param filename
	 *            文件名称
	 * @param imageType
	 *            当前的图片类型
	 * 
	 * @description 根据指定的文件名来加载文件，对于部分UI来说，这个可能就马上要触发当前的下载以及相关展现
	 *              <p>
	 *              统一接口，有文件的控件实现此接口 ,
	 *              </p>
	 * @Date 2014-6-9
	 * @author chenxiaohua
	 */
//	public void loadFile(String filename, ImageType imageType);
}
